Youtube 頻道:https://www.youtube.com/c/kaochenlong
如果畫面太小或看不清楚
可移駕至 https://www.youtube.com/watch?v=tcW7rSh_gGI 觀看 4K 高畫質版本
如果喜歡這個系列的影片,歡迎訂閱我的頻道
或是想聽我介紹一些別的內容,也可直接在這裡或 YouTube 頁面下方留言 :)
檔案:.gitlab-ci.yml
stages:
  - linter
  - testing
  - build
  - deploy
image: alpine:latest
# workflow:
#   rules:
#     - if: $CI_PIPELINE_SOURCE == "merge_request_event"
#       when: always
#     - when: never
variables:
  my_name: "hello kitty"
helloworld:
  stage: linter
  script:
    - echo "hello world , GitLab! $my_name $PROD_URL"
run_ruby_scripts:
  image: ruby:3.1.2-alpine3.16
  stage: testing
  script:
    - ruby -v
    - ruby -e "puts 'hello world'"
run_unit_tests:
  stage: testing
  script:
    - echo "執行單元測試"
build_docker_image:
  stage: build
  script:
    - echo "building docker image"
deploy_to_production:
  stage: deploy
  script:
    - echo "deploy to production"
各集影片連結:
Day 01 - 為你自己學 GitLab CI/CD
Day 02 - 什麼是 CI/CD
Day 03 - 建立 .gitlab-ci.yml
Day 04 - 新增 Pipeline Job
Day 05 - 工作階段以及相依性
Day 06 - 執行外部檔案
Day 07 - 指定分支
Day 08 - 環境變數
Day 09 - GitLab CI 與 Docker Image
Day 10 - Runner 與 Executor
Day 11 - 在本機的 GitLab Runner
Day 12 - 在 DigitalOcean 上安裝 GitLab Runner
Day 13 - Group Runner
Day 14 - 專案演練 part 1 設定 Pipeline
Day 15 - 專案演練 part 2 把專案打包成 Docker Image
Day 16 - 專案演練 part 3 推上 Docker Registry
Day 17 - 專案演練 part 4 自動遞增 Image 版號
Day 18 - 使用 Docker Compose
Day 19 - 使用 SSH 連線伺服器
Day 20 - 部署 Image 到伺服器上
Day 21 - 部署 Staging 伺服器
Day 22 - 整理重複的工作
Day 23 - 手動部署 Production 環境
Day 24 - Artifacts 產物
Day 25 - Deploy on AWS part 1
Day 26 - Deploy on AWS part 2
Day 27 - Deploy on AWS part 3
Day 28 - Deploy on GCP part 1
Day 29 - Deploy on GCP part 2
Day 30 - 重點回顧
在 global 區域使用 image 宣告要注意,官方有宣告不建議使用,在未來會取消支援。
會建議使用 default:image ex:
default:
  image: ruby:3.0
讚!感謝提醒 :)